#include<iostream>
using namespace std;
class String
{
private:
	char* str;
	int size;
public:
	String(int si,char*sr)
	{
		size = si;
		str = new char[size + 1];
		for (int i = 0; i < size + 1; i++)
		{
			str[i] = sr[i];
		}
	}

	/*friend String operator+=(String&str1, String&str2);*/
	String operator+=(String& str2);
	void show();
};

// String operator+=(String& str1, String& str2)
//{
//	String temp = str1;
//	str1.size += str2.size;
//	str1.str = new char[str1.size+ 1];
//	for (int i = 0; i < temp.size; i++)
//	{
//		str1.str[i] = temp.str[i];
//	}
//	for (int i = temp.size; i < str1.size; i++)
//	{
//		str1.str[i] = str2.str[i - temp.size];
//	}
//	str1.str[str1.size - 1] = 0;
//	return str1;
//}

 String String::operator+=(String& str2)
 {
	 String temp = *this;
	 size += str2.size;
	 str = new char[size +1];
	 for (int i = 0; i < temp.size; i++)
	 {
		 str[i] = temp.str[i];
	 }
	 for (int i = temp.size; i < size; i++)
	 {
		 str[i] = str2.str[i - temp.size];
	 }
	 str[size] = 0;
	 return *this;
 }

 void String::show()
 {
	 cout << str << endl;
 }
void main()
{
	char s1[] = "Hello";
	char s2[] = "Ketty";
	String str1(sizeof(s1) - 1, s1), str2(sizeof(s2) - 1, s2);
	str1 += str2;
	str1.show();

}